///******************************************************************************* // * Copyright (c) 2007 IBM Corporation and others. // * All rights reserved. This program and the accompanying materials // * are made available under the terms of the Eclipse Public License v1.0 // * which accompanies this distribution, and is available at // * http://www.eclipse.org/legal/epl-v10.html // * // * Contributors: // * IBM Corporation - initial API and implementation // ******************************************************************************/ //package org.eclipse.ui.tests.systeminplaceeditor; // //import java.io.ByteArrayInputStream; //import java.io.File; //import java.io.InputStream; // //import junit.framework.Test; //import junit.framework.TestSuite; // //import org.eclipse.core.filesystem.EFS; // //import org.eclipse.core.resources.IFile; //import org.eclipse.core.resources.IProject; //import org.eclipse.core.resources.ResourcesPlugin; // //import org.eclipse.ui.IEditorPart; //import org.eclipse.ui.IEditorRegistry; //import org.eclipse.ui.IWorkbenchPage; //import org.eclipse.ui.IWorkbenchWindow; //import org.eclipse.ui.PlatformUI; //import org.eclipse.ui.WorkbenchException; //import org.eclipse.ui.ide.IDE; //import org.eclipse.ui.tests.harness.util.UITestCase; // // ///** // * Tests opening the // * <code>org.eclipse.ui.internal.editorsupport.win32.OleEditor<code>. // * <p> // * <strong>Note:</strong> The tests pass on all platforms but // * only perform for real when a system in-place editor is // * available for *.doc. // * </p> // * // * @since 3.4 // */ //public class OpenSystemInPlaceEditorTest extends UITestCase { // // // public static Test suite() { // return new TestSuite(OpenSystemInPlaceEditorTest.class); // } // // // /** // * Creates the test object. // * // * @param testName the test name // */ // public OpenSystemInPlaceEditorTest(String testName) { // super(testName); // } // // public void testWorkspaceFile() throws Exception { // if (!PlatformUI.getWorkbench().getEditorRegistry().isSystemInPlaceEditorAvailable("test.doc")) // return; // // // Custom setup // IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("test" + System.currentTimeMillis()); // project.create(null); // project.open(null); // IFile file = project.getFile("test.doc"); // InputStream s = new ByteArrayInputStream("some test content".getBytes()); // file.create(s, false, null); // // IWorkbenchPage page = getWorkbenchPage(); // IEditorPart editor = IDE.openEditor(page, file); // // assertEquals(IEditorRegistry.SYSTEM_INPLACE_EDITOR_ID, editor.getEditorSite().getId()); // // // Custom tear down // page.closeEditor(editor, false); // file.delete(false, null); // project.delete(false, null); // } // // public void testExternalFile() throws Exception { // if (!PlatformUI.getWorkbench().getEditorRegistry().isSystemInPlaceEditorAvailable("test.doc")) // return; // // // Custom setup // File file = File.createTempFile("test", ".doc"); // // IWorkbenchPage page = getWorkbenchPage(); // IEditorPart editor = IDE.openEditorOnFileStore(page, EFS.getStore(file.toURI())); // // assertEquals(IEditorRegistry.SYSTEM_INPLACE_EDITOR_ID, editor.getEditorSite().getId()); // assertFalse("is not error editor", "org.eclipse.ui.internal.ErrorEditorPart".equals(editor.getClass().getName())); // // // Custom tear down // page.closeEditor(editor, false); // file.delete(); // } // // private IWorkbenchPage getWorkbenchPage() { // IWorkbenchWindow window; // try { // if (getWorkbench().getWorkbenchWindowCount() == 0) // window = getWorkbench().openWorkbenchWindow(null); // else // window = getWorkbench().getWorkbenchWindows()[0]; // // IWorkbenchPage[] pages = window.getPages(); // if (pages.length > 0) // return pages[0]; // // return window.openPage(null); // } catch (WorkbenchException ex) { // fail(); // return null; // } // } //}